package com.yonyou.cn.mongodbtest.constant;

import org.apache.commons.lang3.StringUtils;

public class SssfmConstant {
	  public static final String COMPO_ID_SSSFM_INCOME_TAX = "SSSFM_INCOME_TAX";//地税征缴
	  
	  public static final String COMPO_ID_SSSFM_COMP = "SSSFM_COMP";//银行单据和手工单据对比
	  
	  public static final String COMPO_ID_SSSFM_INCOME_AGENCY = "SSSFM_INCOME_AGENCY";//经办机构征缴

	  public static final String COMPO_ID_SSSFM_INCOME_FIN_SUPPLY = "SSSFM_INCOME_FIN_SUPPLY";//财政补助收入管理

	  public static final String COMPO_ID_SSSFM_INCOME_INTEREST = "SSSFM_INCOME_INTEREST";//专户利息收入管理

	  public static final String COMPO_ID_SSSFM_EXPEND_ACCOUNT = "SSSFM_EXPEND_ACCOUNT";//专户拨款

	  public static final String COMPO_ID_SSSFM_REGULATE_UPPER = "SSSFM_REGULATE_UPPER";//调剂金上解

	  public static final String COMPO_ID_SSSFM_REGULATE_ALLOT = "SSSFM_REGULATE_ALLOT";//调剂金拨付
	  
	  public static final String COMPO_ID_SSSFM_EXPEND_ACCOUNT_PRE = "SSSFM_EXPEND_ACCOUNT_PRE";//经办机构申拨
	  
	  public static final String COMPO_ID_SSSFM_BG_GENERATE = "SSSFM_BG_GENERATE";//预算生成
	  
	  public static final String COMPO_ID_SSSFM_MA_BUS_PARAM_SET = "MA_BUS_PARAM_SET";//业务参数设置
	  
	  public static final String COMPO_ID_SSSFM_MA_INS_TYPE = "MA_INS_TYPE";//资金性质
	  
	  public static final String COMPO_ID_SSSFM_MA_INS_IO_ITEM = "MA_INS_IO_ITEM";//社保收支项目
	  
	  public static final String COMPO_ID_SSSFM_AGENCY_INS = "SSSFM_AGENCY_INS";//经办机构资金性质
	  
	  public static final String COMPO_ID_SSSFM_EXPEND_ALLOC_APP = "SSSFM_EXPEND_ALLOC_APP";//社保财政专户拨款申请
	  
	  public static final String COMPO_ID_SSSFM_RMT_INCOME_AGENCY = "SSSFM_RMT_INCOME_AGENCY";//异地就医收款

	  public static final String COMPO_ID_SSSFM_RMT_EXPEND_ACCOUNT = "SSSFM_RMT_EXPEND_ACCOUNT";//异地就医拨款单
	  
	 // public static final String COMPO_ID_SSSFM_RMT_EXPEND_ALLOC_APP = "SSSFM_RMT_EXPEND_ALLOC_APP";//社保财政专户拨款申请

	  public static final String COMPO_ID_SSSFM_RMT_EXPEND_ALLOC_APP = "SSSFM_RMT_EXPEND_ALLOC_APP";//异地就医申拨单

	  
	  public static final String COMPO_ID_SSSFM_RMT_EXPEND_ALLOC_APP_AUDIT = "SSSFM_RMT_EXPEND_ALL_APP_AUDIT";//异地就医申拨单审核
	  
	  public static final String COMPO_ID_SSSFM_IO_BILL_DETAIL = "SSSFM_IO_BILL_DETAIL";//单据明细
	  
	  public static final String COMPO_ID_SSSFM_REGULATE_ALLOT_AUDIT = "SSSFM_REGULATE_ALLOT_AUDIT";//调剂金拨付
	  public static final String COMPO_ID_SSSFM_REGULATE_UPPER_AUDIT = "SSSFM_REGULATE_UPPER_AUDIT";//调剂金上解
	  public static final String COMPO_ID_SSSFM_EXPEND_ACCOUNT_AUDIT = "SSSFM_EXPEND_ACCOUNT_AUDIT";//专户拨款
	  public static final String COMPO_ID_SSSFM_INCOME_FIN_SUPPLY_AUDIT = "SSSFM_INCOME_FIN_SUPPLY_AUDIT";//财政补助收入管理
	  public static final String COMPO_ID_SSSFM_INCOME_TAX_AUDIT = "SSSFM_INCOME_TAX_AUDIT";//地税征缴
	  public static final String COMPO_ID_SSSFM_AGENCY_BANK_BAL_TRANS = "SSSFM_AGENCY_BANK_BAL_TRANS";//支出户期末余额化解
	  public static final String COMPO_ID_SSSFM_EXPEND_ALLOC_APP_AUDIT = "SSSFM_EXPEND_ALLOC_APP_AUDIT";//社保财政专户拨款申请
	  public static final String COMPO_ID_SSFO_FDPT_WARNING_SET = "SSFO_FDPT_WARNING_SET";//预警设置
	  public static final String COMPO_ID_BANK_ACCESS_DATA = "SSSFM_BANK_ACCESS_DATA";//预警设置

	  /**
	   * 工作流审核部件后缀
	   * */
	  public static final String COMPO_ID_WF_AUDIT_SUFFIX = "_AUDIT";

	  /**
	   * 账户类型--收入户
	   * */
	  public static final String BK_ACCO_CLASS_INCOME_ACCOUNT = "01";

	  /**
	   * 账户类型--支出户
	   * */
	  public static final String BK_ACCO_CLASS_PAY_ACCOUNT = "02";

	  /**
	   * 账户类型--财政专户
	   * */
	  public static final String BK_ACCO_CLASS_FINANICIAL_ACCOUNT = "03";

	  /**
	   * 账户类型--国库存款
	   * */
	  public static final String BK_ACCO_CLASS_NATIONAL_DEPOSIT_ACCOUNT = "08";

	  /**
	   * 工作流必须带的参数  MASTER_TAB_ID -- 目前提供默认值就是BILL表名
	   * */
	  public static final String WF_DEFALT_MASTER_TAB_ID = "SSSFM_IO_BILL";

	  /**
	   * 生成凭证,总账平台用的记账类型代码  -- 01
	   * */
	  public static final String LP_ACCOUNT_TYPE = "01";

	  /**
	   * 生成凭证,记账类型
	   * */
	  public static final String GL_VOU_TYPE_JZ = "JZ";

	  public static final String SSSFM = "SSSFM";

	  public static final String SSSFM_NAME = "财政社保大集中财务核算";

	  /**
	   * 收支项目类型-基金收入
	   */
	  public static final String IO_ITEM_TYPE_INS_IN = "00";

	  /**
	   * 收支项目类型-基金支出
	   */
	  public static final String IO_ITEM_TYPE_INS_OUT = "10";

	  /**
	   * 收支项目类型-专项支出
	   */
	  public static final String IO_ITEM_TYPE_SP_OUT = "11";

	  /**
	   * 工作环境变量-用户ID
	   */
	  public static final String SV_USER_ID = "svUserID";

	  /**
	   * 工作环境变量-用户名称
	   */
	  public static final String SV_USER_NAME = "svUserName";

	  /**
	   * 工作环境变量-单位代码
	   */
	  public static final String SV_CO_CODE = "svCoCode";

	  /**
	   * 工作环境变量-单位名称
	   */
	  public static final String SV_CO_NAME = "svCoName";

	  /**
	   * 工作环境变量-年度
	   */
	  public static final String SV_FISCAL_YEAR = "svFiscalYear";

	  /**
	   * 工作环境变量-账套
	   */
	  public static final String SV_ACCOUNT_ID = "svAccountId";

	  /**
	   * 工作环境变量-期间
	   */
	  public static final String SV_FISCAL_PERIOD = "svFiscalPeriod";

	  /**
	   * 工作环境变量-币种
	   */
	  public static final String SV_STD_CURRENCY = "svStdCurrency";

	  /**
	   * 工作环境变量-业务日期
	   */
	  public static final String SV_TRANS_DATE = "svTransDate";

	  /**
	   * 工作环境变量-部门
	   */
	  public static final String SV_ORG_CODE = "svOrgCode";

	  /**
	   * 单据年度  
	   */
	  public static final String BILL_FISCAL = "FISCAL";

	  /**
	   * 单据录入单位
	   */
	  public static final String BILL_CO_CODE = "CO_CODE";

	  /**
	   * 单据类型
	   */
	  public static final String BILL_TYPE = "BILL_TYPE";

	  /**
	   * 单据号索引
	   */
	  public static final String BILL_NO_INDEX = "BILL_NO_INDEX";
	  /**
	   *  AS_VAL表 ID 常量
	   */
	  /**
	   * SSSFM模块收支项目业务类型直接ID
	   */
	  public static final String SSSFM_ITEM_CODE_ID = "SSSFM_ITEM_CODE_ID";
	  /**
	   * 项目代码-补助下级支出 VAL_ID
	   */
	  public static final String ITEM_CODE_ALLOT_SUB_OUT = "ALLOT_SUB_OUT";
	  /**
	   * 项目代码-上级补助收入 VAL_ID
	   */
	  public static final String ITEM_CODE_ALLOT_SUP_IN = "SUP_ALLOT_IN";
	  /**
	   * 项目代码-上解上级支出 VAL_ID
	   */
	  public static final String ITEM_CODE_UPPER_SUP_OUT = "UPPER_SUP_OUT";
	  /**
	   * 项目代码-下级上解收入 VAL_ID
	   */
	  public static final String ITEM_CODE_UPPER_SUB_IN = "SUB_UPPER_IN";
	  /**
	   * 项目代码-保费收入 VAL_ID
	   */
	  public static final String ITEM_CODE_INS_IN = "INS_IN";
	  /**
	   * 收支项目 财政补贴收入
	   */
	  public static final String ITEM_CODE_FIN_SUPPLY = "FIN_SUPPLY_IN";

	  /**
	   * 收支项目 利息收入
	   */
	  public static final String ITEM_CODE_INSTEREST = "INSTEREST_IN";
	  /**
	   * VALSET_ID
	   */
	  public static final String VALSET_ID = "VALSET_ID";
	  /**
	   * VAL_ID
	   */
	  public static final String VAL_ID = "VAL_ID";
	  /**
	   * VAL
	   */
	  public static final String VAL = "VAL";
	  /**
	   * SSSFM模块指标余额要素字段对应关系值集ID
	   */
	  public static final String SSSFM_BG_GENERATE_ID = "SSSFM_BG_GENERATE_ID";
	  /**
	   * 下拉框 常量
	   */
	  public static final String COMBOBOX_ALL = "--全部--";
	  
	  /**
	   * 单据年度  
	   */
	  public static final String KEY_ND = "ND";

	  /**
	   * 单据录入单位
	   */
	  public static final String KEY_CO_CODE = "CO_CODE";
	  
	  /**
	   * 经办机构申拨单生成财政专户拨款单是否合并收支项目
	   */
	  public static final String OPT_SSSFM_IS_MERGE_ITEM = "Y";
	  
	  /**
	   * 分隔符-英文分号
	   */
	  public static final String SEPARATOR_SEMICOLON = ";";
	  
	  /**
	   * 分隔符-英文竖线
	   */
	  public static final String SEPARATOR_VERTICAL  = "|";
	  
	  /**
	   * 分隔符-英文逗号
	   */
	  public static final String SEPARATOR_COMMA  = ",";
	  /**
	   * 分隔符-英文中横线
	   */
	  public static final String SEPARATOR_HYPHEN  = "-";
	  /**
	   * 分隔符-英文回中括号
	   */
	  public static final String SEPARATOR_RIGHT_BRACKET  = "]";
	  /**
	   * 分隔符-英文#号
	   */
	  public static final String SEPARATOR_SHARP  = "#";
	  
	  /**
	   * SSSFM模块启用辅助核算项对应关系值集ID
	   */
	  public static final String SSSFM_MAP_ACC_ITEM_ID = "SSSFM_MAP_ACC_ITEM";
	  
	  /**
	   * 辅助核算项ID-资金性质
	   */
	  public static final String VAL_ID_FUND_CODE  = "FUND_CODE";
	  
	  /**
	   * 辅助核算项ID-预算来源
	   */
	  public static final String VAL_ID_BUDGET_ORIGIN  = "BUDGET_ORIGIN";
	  
	  /**
	   * 辅助核算项ID-收支项目
	   */
	  public static final String VAL_ID_IO_ITEM  = "IO_ITEM";
	  /**
	   * 辅助核算项ID-缴费期
	   */
	  public static final String VAL_ID_IN_PERD_TYPE  = "IN_PERD_TYPE";
	  /**
	   * 辅助核算项ID-财政补贴级次
	   */
	  public static final String VAL_ID_GOV_SUBSIDY_LEVEL  = "GOV_SUBSIDY_LEVEL";
	  /**
	   * 辅助核算项ID-险种
	   */
	  public static final String VAL_ID_INS_TYPE  = "INS_TYPE";
	  /**
	   * 辅助核算项ID-预算类型
	   */
	  public static final String VAL_ID_IO_TYPE  = "IO_TYPE";
	  
	  
	  /**
	   * SSSFM模块 调用Rmis存储过程生成取数视图所需参数
	   */
	  public static final String SSSFM_UR_CREATE_VIEW = "SSSFM_UR_CREATE_VIEW_PARAM";
	  
	  /**
	   * 辅助核算项ID-收支项目
	   */
	  public static final String VAL_ID_NCYS  = "PARAM_NCYS";
	  /**
	   * 辅助核算项ID-缴费期
	   */
	  public static final String VAL_ID_YSTZ  = "PARAM_YSTZ";
	  
	  public static final String ACTION_BEAN_ADDRESS_INCOME_TAX = "sssfmIncomeTaxEdit.action";//地税征缴
	  
	  public static final String ACTION_BEAN_ADDRESS_INCOME_TAX_LIST = "sssfmIncomeTaxList.action";//地税征缴列表

	  public static final String ACTION_BEAN_ADDRESS_AGENCY = "sssfmIncomeAgencyEdit.action";//经办机构征缴
	  
	  public static final String ACTION_BEAN_ADDRESS_AGENCY_LIST = "sssfmIncomeAgencyList.action";//经办机构征缴里

	  public static final String ACTION_BEAN_ADDRESS_FIN_SUPPLY = "sssfmIncomeFinSupplyEdit.action";//财政补助收入管理
	  
	  public static final String ACTION_BEAN_ADDRESS_FIN_SUPPLY_LIST = "sssfmIncomeFinSupplyList.action";//财政补助收入管理

	  public static final String ACTION_BEAN_ADDRESS_INTEREST = "sssfmIncomeInterestEdit.action";//专户利息收入管理
	  
	  public static final String ACTION_BEAN_ADDRESS_INTEREST_LIST = "sssfmIncomeInterestList.action";//专户利息收入管理

	  public static final String ACTION_BEAN_ADDRESS_EXPEND_ACCOUNT = "sssfmExpendAccountEdit.action";//专户拨款
	  
	  public static final String ACTION_BEAN_ADDRESS_EXPEND_ACCOUNT_LIST = "sssfmExpendAccountList.action";//专户拨款

	  public static final String ACTION_BEAN_ADDRESS_EXPEND_ACCOUNT_PRE = "sssfmExpendAccountPreEdit.action";//经办机构申拨
	  
	  public static final String ACTION_BEAN_ADDRESS_EXPEND_ACCOUNT_PRE_LIST = "sssfmExpendAccountPreList.action";//经办机构申拨
	  
	  public static final String ACTION_BEAN_ADDRESS_REGULATE_UPPER = "sssfmRegulateUpper.action";//调剂金上解
	  
	  public static final String ACTION_BEAN_ADDRESS_REGULATE_UPPER_LIST = "sssfmRegulateUpperList.action";//调剂金上解

	  public static final String ACTION_BEAN_ADDRESS_REGULATE_ALLOT = "sssfmRegulateAllot.action";//调剂金拨付
	  
	  public static final String ACTION_BEAN_ADDRESS_REGULATE_ALLOT_LIST = "sssfmRegulateAllotList.action";//调剂金拨付
	  
	  public static final String ACTION_BEAN_ADDRESS_EXPEND_ALLOC_APP_LIST = "sssfmExpendAllocAppList.action";//经办机构申拨
	  
	  public static final String ACTION_BEAN_ADDRESS_RMT_EXPEND_ALLOC_APP_LIST = "rmtExpendAllocAppList.action";//经办机构申拨

	  /*
	   * 人员ID
	   */
	  public static final String KEY_EMP_CODE = "EMP_CODE";
	  
	  /*
	   * 数值权限对象类型
	   */
	  public static final String KEY_TYPE_CODE = "TYPE_CODE";
	  
	  /*
	   * 数值权限范围
	   */
	  public static final String KEY_GRAN_RANGE = "GRAN_RANGE";
	  
	  /*
	   * 是否有权限
	   */
	  public static final String KEY_IS_GRAN = "IS_GRAN";
	  
	  /*
	   * 允许权限
	   */
	  public static final String KEY_IS_GRANT_YES = "Y";
	  
	  /*
	   * 禁止权限
	   */
	  public static final String KEY_IS_GRANT_NO = "N";
	  
	  /*
	   * 允许list
	   */
	  public static final String KEY_NUM_LIM_GRAN = "granNumLimList";
	  
	  /*
	   * 禁止list
	   */
	  public static final String KEY_NUM_LIM_REVO = "revoNumLimList";
	  
	  /***
	   * 基金统筹方式：统收统支
	   */
	  public static final String JJ_TSH_TZH = "0";
	  
	  /***
	   * 基金统筹方式：非统收统支
	   */
	  public static final String JJ_NO_TSH_TZH = "1";
	  
	  /***
	   * 基金统筹级次：省级
	   */
	  public static final String PROVINCE_ORDER = "1";
	  
	  /***
	   * 基金统筹级次：市级
	   */
	  public static final String CITY_ORDER = "2";
	  
	  /***
	   * 基金统筹级次：县级
	   */
	  public static final String COUNTY_RODER = "3";
	  
	  /**
	   * 进入类型：前一条
	   */
	  public static final String GET_TYPE_PRE = "pre";
	  
	  /**
	   * 查找类型：后一条
	   */
	  public static final String GET_TYPE_NEXT = "next";
	  
	 
	  //*************************** 台账-开始 *************************************/  
	  /**
	   * 台账-查询参数：区域代码
	   */
	  public static final String PARAM_DIST_CODE = "distCode";
	  
	  /**
	   * 台账-查询参数：险种类型
	   */
	  public static final String PARAM_INS_TYPE_CODE = "insTypeCode";
	  
	  /**
	   * 台账-查询参数：年度
	   */
	  public static final String PARAM_YEAR = "year";
	  
	  /**
	   * 台账-查询参数：月度
	   */
	  public static final String PARAM_MONTH = "month";
	  
	  /**
	   * 台账-查询参数：主体类型
	   */
	  public static final String PARAM_MAINBODY_TYPE = "mainbodyType";
	  
	  /**
	   * 台账-查询参数：主体名称
	   */
	  public static final String PARAM_MAINBODY_NAME = "mainbodyName";
	  
	  /**
	   * 台账-查询参数：主体编码
	   */
	  public static final String PARAM_MAINBODY_CODE = "mainbodyCode";
	  
	  /**
	   * 收入：员工编号
	   */
	  public static final String PARAM_SR_EMP_CODE = "empCode";
	  
	  /**
	   * 收入：员工姓名
	   */
	  public static final String PARAM_SR_EMP_NAME = "empName";
	  
	  /**
	   * 收入：机构编码
	   */
	  public static final String PARAM_SR_ORG_CODE = "orgCode";
	  
	  /**
	   * 收入：机构姓名
	   */
	  public static final String PARAM_SR_ORG_NAME = "orgName";
	  
	  /**
	   * 待遇项目代码:参见值集VS_ZC_DTL_IO_ITEM_CODE，代码1-29
	   */
	  public static final String PARAM_IO_ITEM_CODE = "ioItemCode";
	  
	  /**
	   * 主体身份代码：个人为社会保障号，单位为单位社会信用代码(废弃)
	   */
	  @Deprecated
	  public static final String PARAM_MAINBODY_NO = "mainbodyNo";
	  
	  /**
	   * 上一个月增加
	   */
	  public static final String DATATYPE_PRE_INC = "inc";
	  
	  /**
	   * 上一个月减少
	   */
	  public static final String DATATYPE_PRE_RED = "red";
	 
	 /**
	  * @ClassName: MainBodyType
	  * @Description: 主体类型
	  * @author Administrator
	  * @date 2019-06-14 14:04
	  *
	  */
	 public static enum MainBodyType{
		 QB("*","全部"),
		 DW("1","单位"),
		 GR("2","个人");
		 
		 private String key;
		 
		 private String value;
		 
		MainBodyType(String key, String value) {
			this.key = key;
			this.value = value;
		}

		public String getKey() {
			return key;
		}

		public String getValue() {
			return value;
		}
		 
		public static String getName(String key) {
			MainBodyType[] values = MainBodyType.values();
			for (MainBodyType payType : values) {
				if(StringUtils.equals(payType.getKey(), key)) {
					return  payType.getValue();
				}
			}
			return null;
		}
		 
	 }
	 
	 /**
	  * @ClassName: AccountType
	  * @Description: 收支账户类型
	  * @author Administrator
	  * @date 2019-08-01 16:59
	  *
	  */
	 public static enum AccountType {
		 ZC_ACCOUNT,
		 SR_ACCOUNT,
		 ZYSR_ACCOUNT;
	 }
	  
	//*************************** 台账-结束*************************************/
		  
	  
}
